import request from '@/libs/request'

/**
 * @description NFC使用权限管理 -- 获取商户权限列表
 * @param {Object} params 查询参数
 */
export function getAuthorizationList(params) {
  return request({
    url: 'nfc/authorization/list',
    method: 'get',
    params
  })
}

/**
 * @description NFC使用权限管理 -- 开通商户NFC使用权限
 * @param {Object} data 开通数据
 */
export function authorizeMerchant(data) {
  return request({
    url: 'nfc/authorization/authorize',
    method: 'post',
    data
  })
}

/**
 * @description NFC使用权限管理 -- 回收商户NFC使用权限
 * @param {Object} data 回收数据
 */
export function revokeMerchantAuthorization(data) {
  return request({
    url: 'nfc/authorization/revoke',
    method: 'post',
    data
  })
}

/**
 * @description NFC使用权限管理 -- 批量开通NFC使用权限
 * @param {Object} data 批量开通数据
 */
export function batchAuthorizeMerchants(data) {
  return request({
    url: 'nfc/authorization/batch-authorize',
    method: 'post',
    data
  })
}

/**
 * @description NFC使用权限管理 -- 批量回收NFC使用权限
 * @param {Object} data 批量回收数据
 */
export function batchRevokeMerchantAuthorization(data) {
  return request({
    url: 'nfc/authorization/batch-revoke',
    method: 'post',
    data
  })
}

/**
 * @description NFC使用权限管理 -- 检查NFC使用权限状态
 * @param {Object} params 查询参数
 */
export function checkAuthorizationStatus(params) {
  return request({
    url: 'nfc/authorization/check-status',
    method: 'get',
    params
  })
}

/**
 * @description NFC使用权限管理 -- 导出CSV数据
 * @param {Object} params 导出参数
 */
export function exportAuthorizationCSV(params) {
  return request({
    url: 'nfc/authorization/export',
    method: 'get',
    params,
    responseType: 'blob',
    headers: {
      'Accept': 'text/csv,application/octet-stream'
    }
  })
}

/**
 * @description NFC使用权限管理 -- 切换NFC使用权限
 * @param {Object} data { merchant_id, is_authorized, remarks }
 */
export function toggleAuthorization(data) {
  return request({
    url: 'nfc/authorization/toggle',
    method: 'post',
    data
  })
}


